<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class CargarDatos extends CI_Controller {

    /////////////////////////CONSTRUCTOR/////////////////////////

    function __construct() {
        parent::__construct();
        $this->load->helper('form');
        $this->load->model('CargarDatos_Model');
        $this->_esta_logueado();
    }

    /////////////////////////VISTAS/////////////////////////

    function ciclo_academico() {
        echo $this->load->view('cargarDatos/ciclo_academico');
    }

    function cursos_horarios_docentes() {
        echo $this->load->view('cargarDatos/cursos_horarios_docentes');
    }

    /////////////////////////VISTA cargar_cursos_horarios_docentes/////////////////////////

    function cargar_cursos_horarios_docentes() {
        require APPPATH . 'libraries/PHPExcel.php';
        require_once APPPATH . 'libraries/PHPExcel/IOFactory.php';

        //$nombre = $_FILES['arch']['name'];
        $temporal = $_FILES['arch']['tmp_name'];
        //$tamano= ($_FILES['arch']['size'] / 1000)."Kb";

        $objPHPExcel = PHPExcel_IOFactory::load($temporal);
        foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
            //$worksheetTitle = $worksheet->getTitle();
            $highestRow = $worksheet->getHighestRow();
            $highestColumn = $worksheet->getHighestColumn();
            $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
        }

        //ARMAR UN ARREGLO Y LLAMAR AL MODELO

        $docentes = array();

        for ($row = 2; $row <= $highestRow; $row++) {
            $dFilas = array();
            for ($col = 0; $col < $highestColumnIndex; $col++) {
                $cell = $worksheet->getCellByColumnAndRow($col, $row);
                $val = $cell->getValue();
                $dFilas[$row][$col] = $val;
            }
            $docentes = array_merge_recursive($docentes, $dFilas);
        }
     
        //insertar a la BASE DE DATOS
        $mensaje = $this->CargarDatos_Model->cargar_cursos_horarios_docentes($docentes);

        echo $mensaje;
    }

    /////////////////////////VISTA CICLO_ACADEMICO/////////////////////////

    function buscar_ciclo_academico() {
        $ciclo = $this->input->post('ciclo');
        $resultado = $this->CargarDatos_Model->buscar_ciclo_academico($ciclo);

        $cad = "<div  style='overflow:scroll; height:400px'>
        <table class='table'>
        <thead>
        <tr>";

        $cad = $cad . "<th>Ciclo Académico</th> <th>Visualizar</th> <th>Modificar</th> <th>Eliminar</th>";
        $cad = $cad . "
        </tr>
        </thead>
        <tbody>";
        $cont = 0;
        
        if ($resultado) {
            foreach ($resultado as $obj) {
                $cont = $cont + 1;
                $cad2 = "<tr class='tr_hover_nothing' onmouseover=\"this.className='tr_hover_color';\"
                    onmouseout=\"this.className='tr_hover_nothing';\">
                    <td align='center' valign='middle'>" . $obj['descripcion'] . "</td>
                    <td align='center' valign='middle' style='display:none'><input  id=id" . $cont . " value=" . $obj['idCiclo'] . "></td>
                    <td align='center' valign='middle'><a class='btn btn-info' onclick='ver_ciclo_academico(" . $cont . ")'><i class='icon-th-list icon-white'></i></a></td>
                    <td align='center' valign='middle'><a class='btn btn-info' onclick='modificar_ciclo_academico(" . $cont . ")' ><i class='icon-pencil icon-white'></i></a></td>
                    <td align='center' valign='middle'><a class='btn btn-danger' onclick='eliminar_semanas_ciclo_academico(" . $cont . ")' ><i class='icon-trash icon-white'></i></a></td>
                </tr>";
                $cad = $cad . $cad2;
            }
        }
        $cad = $cad . "</tbody></table></div>";

        echo $cad;
    }

    /////////////////////////VISTA CICLO_ACADEMICO/////////////////////////

    function ver_ciclo_academico() {
        $idCiclo = $this->input->post('idCiclo');
        
        if($idCiclo==0) $idCiclo=$this->session->userdata('ciclo');
            
        
        $ciclo = $this->CargarDatos_Model->buscar_ciclo($idCiclo);
        $semanas = $this->CargarDatos_Model->buscar_semanas($idCiclo);
        $data['ciclo'] = $ciclo[0]->descripcion;
        $data['semanas'] = $semanas;
        echo $this->load->view('cargarDatos/ver_ciclo_academico', $data);
    }

    /////////////////////////VISTA CICLO_ACADEMICO/////////////////////////

    function registrar_ciclo_academico() {
        $data['ciclos'] = $this->CargarDatos_Model->combo_ciclos_sin_calendario();
        echo $this->load->view('cargarDatos/registrar_ciclo_academico', $data);
    }

    /////////////////////////VISTA REGISTRAR_CICLO_ACADEMICO/////////////////////////

    function registrar_semanas_ciclo_academico() {
        $idCiclo = $this->input->post('idCiclo');
      
        $data['fi1'] = $this->input->post('fi1');
        $data['ff1'] = $this->input->post('ff1');
        $data['fi2'] = $this->input->post('fi2');
        $data['ff2'] = $this->input->post('ff2');
        $data['fi3'] = $this->input->post('fi3');
        $data['ff3'] = $this->input->post('ff3');
        $data['fi4'] = $this->input->post('fi4');
        $data['ff4'] = $this->input->post('ff4');
        $data['fi5'] = $this->input->post('fi5');
        $data['ff5'] = $this->input->post('ff5');
        $data['fi6'] = $this->input->post('fi6');
        $data['ff6'] = $this->input->post('ff6');
        $data['fi7'] = $this->input->post('fi7');
        $data['ff7'] = $this->input->post('ff7');
        $data['fi8'] = $this->input->post('fi8');
        $data['ff8'] = $this->input->post('ff8');
        $data['fi9'] = $this->input->post('fi9');
        $data['ff9'] = $this->input->post('ff9');
        $data['fi10'] = $this->input->post('fi10');
        $data['ff10'] = $this->input->post('ff10');
        $data['fi11'] = $this->input->post('fi11');
        $data['ff11'] = $this->input->post('ff11');
        $data['fi12'] = $this->input->post('fi12');
        $data['ff12'] = $this->input->post('ff12');
        $data['fi13'] = $this->input->post('fi13');
        $data['ff13'] = $this->input->post('ff13');
        $data['fi14'] = $this->input->post('fi14');
        $data['ff14'] = $this->input->post('ff14');
        $data['fi15'] = $this->input->post('fi15');
        $data['ff15'] = $this->input->post('ff15');
        $data['fi16'] = $this->input->post('fi16');
        $data['ff16'] = $this->input->post('ff16');
        $data['fi17'] = $this->input->post('fi17');
        $data['ff17'] = $this->input->post('ff17');
        $data['fi18'] = $this->input->post('fi18');
        $data['ff18'] = $this->input->post('ff18');
        $data['fechaMultiple']=$this->input->post('fechaMultiple');
         $data['fechaExamenes']=$this->input->post('fechaExamenes');
        $mensaje = $this->CargarDatos_Model->registrar_semanas_ciclo_academico($data, $idCiclo);

        echo $mensaje;
    }

    /////////////////////////VISTA CICLO_ACADEMICO/////////////////////////

    function modificar_ciclo_academico() {
        $idCiclo = $this->input->post('idCiclo');
        $ciclo = $this->CargarDatos_Model->buscar_ciclo($idCiclo);
        $semanas = $this->CargarDatos_Model->buscar_semanas_modificar($idCiclo);
        $feriados = $this->CargarDatos_Model->buscar_feriados($idCiclo);
        $examenes = $this->CargarDatos_Model->buscar_examenes($idCiclo);
        $data['ciclo'] = $ciclo[0]->descripcion;
        $data['idCiclo'] = $ciclo[0]->descripcion;
        $data['semanas'] = $semanas;

        $cadFeriados="";
        foreach ($feriados as $feriado) { 
            if ($cadFeriados == "")
                $cadFeriados = $feriado['fechaEvento'];
            else
                $cadFeriados = $cadFeriados.",".$feriado['fechaEvento'];
        }
        $cadExamenes="";
        foreach ($examenes as $examen) { 
        if ($cadExamenes == "")
            $cadExamenes = $examen['fechaEvento'];
        else
            $cadExamenes = $cadExamenes.",".$examen['fechaEvento'];
        }
        
        $data['feriados'] = $cadFeriados;
        $data['examenes'] = $cadExamenes;
        echo $this->load->view('cargarDatos/modificar_ciclo_academico', $data);
    }

    /////////////////////////VISTA MODIFICAR_CICLO_ACADEMICO/////////////////////////

    function modificar_semanas_ciclo_academico() {
        $data['idSemana1'] = $this->input->post('idSemana1');
        $data['fi1'] = $this->input->post('fi1');
        $data['ff1'] = $this->input->post('ff1');
        $data['idSemana2'] = $this->input->post('idSemana2');
        $data['fi2'] = $this->input->post('fi2');
        $data['ff2'] = $this->input->post('ff2');
        $data['idSemana3'] = $this->input->post('idSemana3');
        $data['fi3'] = $this->input->post('fi3');
        $data['ff3'] = $this->input->post('ff3');
        $data['idSemana4'] = $this->input->post('idSemana4');
        $data['fi4'] = $this->input->post('fi4');
        $data['ff4'] = $this->input->post('ff4');
        $data['idSemana5'] = $this->input->post('idSemana5');
        $data['fi5'] = $this->input->post('fi5');
        $data['ff5'] = $this->input->post('ff5');
        $data['idSemana6'] = $this->input->post('idSemana6');
        $data['fi6'] = $this->input->post('fi6');
        $data['ff6'] = $this->input->post('ff6');
        $data['idSemana7'] = $this->input->post('idSemana7');
        $data['fi7'] = $this->input->post('fi7');
        $data['ff7'] = $this->input->post('ff7');
        $data['idSemana8'] = $this->input->post('idSemana8');
        $data['fi8'] = $this->input->post('fi8');
        $data['ff8'] = $this->input->post('ff8');
        $data['idSemana9'] = $this->input->post('idSemana9');
        $data['fi9'] = $this->input->post('fi9');
        $data['ff9'] = $this->input->post('ff9');
        $data['idSemana10'] = $this->input->post('idSemana10');
        $data['fi10'] = $this->input->post('fi10');
        $data['ff10'] = $this->input->post('ff10');
        $data['idSemana11'] = $this->input->post('idSemana11');
        $data['fi11'] = $this->input->post('fi11');
        $data['ff11'] = $this->input->post('ff11');
        $data['idSemana12'] = $this->input->post('idSemana12');
        $data['fi12'] = $this->input->post('fi12');
        $data['ff12'] = $this->input->post('ff12');
        $data['idSemana13'] = $this->input->post('idSemana13');
        $data['fi13'] = $this->input->post('fi13');
        $data['ff13'] = $this->input->post('ff13');
        $data['idSemana14'] = $this->input->post('idSemana14');
        $data['fi14'] = $this->input->post('fi14');
        $data['ff14'] = $this->input->post('ff14');
        $data['idSemana15'] = $this->input->post('idSemana15');
        $data['fi15'] = $this->input->post('fi15');
        $data['ff15'] = $this->input->post('ff15');
        $data['idSemana16'] = $this->input->post('idSemana16');
        $data['fi16'] = $this->input->post('fi16');
        $data['ff16'] = $this->input->post('ff16');
        $data['idSemana17'] = $this->input->post('idSemana17');
        $data['fi17'] = $this->input->post('fi17');
        $data['ff17'] = $this->input->post('ff17');
        $data['idSemana18'] = $this->input->post('idSemana18');
        $data['fi18'] = $this->input->post('fi18');
        $data['ff18'] = $this->input->post('ff18');
        $data['idCiclo']=$this->input->post('idCiclo');
      
        $data['fechaMultiple']=$this->input->post('fechaMultiple');
         $data['fechaExamenes']=$this->input->post('fechaExamenes');
        $mensaje = $this->CargarDatos_Model->modificar_semanas_ciclo_academico($data);

        echo $mensaje;
    }

    function eliminar_semanas_ciclo_academico() {
        $idCiclo = $this->input->post('idCiclo');
        $mensaje = $this->CargarDatos_Model->eliminar_semanas_ciclo_academico($idCiclo);

        echo $mensaje;
    }

    function buscar_cursos_horarios_docentes() {
        $curso = $this->input->post('curso');
        $horario = $this->input->post('horario');
        $docente = $this->input->post('docente');
        $resultado = $this->CargarDatos_Model->buscar_cursos_horarios_docentes($curso, $horario, $docente);

        $cad = "<div  style='overflow:scroll; height:400px'>
        <table class='table'>
        <thead>
        <tr>";

        $cad = $cad . "<th>Ciclo Académico</th> <th>Curso</th> <th>Nombre Curso</th> <th>Horario</th> <th>Docente</th> <th>Código Docente</th>";
        $cad = $cad . "
        </tr>
        </thead>
        <tbody>";
        $cont = 0;
        if ($resultado) {
            foreach ($resultado as $obj) {
                $cont = $cont + 1;
                $cad2 = "<tr class='tr_hover_nothing' onmouseover=\"this.className='tr_hover_color';\"
                onmouseout=\"this.className='tr_hover_nothing';\">
                <td align='center' valign='middle'>" . $obj['ciclo'] . "</td>
                <td align='center' valign='middle'>" . $obj['curso'] . "</td>
                <td align='center' valign='middle'>" . $obj['nbrcurso'] . "</td>
                <td align='center' valign='middle'>" . $obj['horario'] . "</td>
                <td align='center' valign='middle'>" . $obj['docente'] . "</td>
                <td align='center' valign='middle'>" . $obj['coddocente'] . "</td>
            </tr>";
                $cad = $cad . $cad2;
            }
            $cad = $cad . "</tbody></table></div>";
        }
        echo $cad;
    }
    
    function cargamasiva_cursos_horarios_docentes() {
        echo $this->load->view('cargarDatos/cargamasiva_cursos_horarios_docentes');
    }

    function _esta_logueado(){
        $esta_logueado = $this->session->userdata('esta_logueado');
        if ($esta_logueado != TRUE){
            redirect('index.php');
        }
    }
    
}